Systems and processes for space management of three dimensional containers

ABSTRACT

Systems and methods for remote monitoring of a container are disclosed. The system includes at least one data collector configured to collect data corresponding to a physical attribute of the container, a wireless transmitter in communication with the at least one data collector and configured to transmit the data corresponding to a physical attribute of the container to a location remote from the location of the container, a server in communication with the wireless transmitter to receive and process the data corresponding to a physical attribute of the container, and a physical attribute analysis engine in communication with the server to receive the data corresponding to a physical attribute of the container and calculate a current value for the physical attribute based upon the received data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No.16/040,861, filed on Jul. 20, 2018 and entitled “Systems and Processesfor Space Management of Three Dimensional Containers,” the contents ofwhich are incorporated herein by reference in its entirety.

COPYRIGHT NOTICE/PERMISSION

Portions of the disclosure may contain material which is subject tocopyright protection. The copyright owner has no objection to thefacsimile reproduction by anyone of this disclosure as it appears in thePatent and Trademark Office patent file or records, but otherwisereserves all copyright rights whatsoever. The following notice appliesto the software and data as described below and in the drawings hereto:Copyright© 2018, Spacemaptech, LLC, All Rights Reserved.

FIELD OF THE DISCLOSURE

The invention relates generally to the field of logistics, and inparticular to systems and methods for space mapping of three-dimensionalcontainers.

BACKGROUND

Space planning in containers is a critical function for effectivelogistics. As used herein, “containers” means any sort of intermodalshipping container, such as those meeting standards such as ISO 668, ISO1496-1, or similar standards, trash or recycling “dumpsters,” cages,crates, vessels, freight train cars, truck beds, truck trailers, shipholds, aircraft holds, warehouses, storage units, barns, buildings, orother containers generally used for containing materials. Space planningenables the logistics stakeholders identify when, what, where, and howto place specific loads. Without proper planning, containers, aircraft,trucks, and ships run the risk of costly shipment, regulatory and healthrisk due to fixup of goods, and losses in revenue opportunity. It istherefore imperative that every logistics/shipping container or vehiclespace is optimized.

Space planning is difficult without a way to measure and evaluate thenature of the space. Some space mapping techniques are known; however,there is need to have faster, more accurate and virtual systems andmethods. For example, if there was a remotely located containercurrently, someone would have to guess how much space is available inthat container, or manually go to the container and make the physicalmeasurement. Thus, there is a need for a system that will take intoaccount the variety of physical spaces and provide real-time data andwith an easy-to-use data analysis to enable faster and insightfuldecision making. Other needs exist, as well as other drawbacks andinconveniences of existing systems and methods.

SUMMARY

Accordingly, the disclosed systems and methods address the above, andother, needs, drawbacks, and inconveniences. Disclosed embodimentsaddress current problems by combining a unique design that incorporatesthe different hardware components inside the container, a datatransmitter, server, and software to deliver a set of capabilities. Forexample, disclosed embodiments enable (1) feedback and looping betweendata collectors and associated servers, (2) messaging to the human usersof either the container or the objects inside the container, (3)accurate mapping of space inside the container, (4) tracking thephysical location of the containers, (5) regulation of conditions insidethe container including temperature, humidity, weight, lighting,air-quality, or the like, (6) control activities inside the containerssuch as locking and unlocking, (7) accurate of identification of objectswithin the container, (8) accurate load sizing inside the container, and(8) proactive and reactive troubleshooting of events inside thecontainers. For example, if the power to the container fails,embodiments of the system can message predetermined person(s) that thepower has failed and, in some cases, the system can self-diagnose andrecommend a remedy, or perform a remedy itself, either via fail-safe,restart, power conservation, or the like.

Disclosed embodiments include a system for remote monitoring of acontainer, the system having at least one data collector configured tocollect data corresponding to a physical attribute of the container, awireless transmitter in communication with the at least one datacollector and configured to transmit the data corresponding to aphysical attribute of the container to a location remote from thelocation of the container, a server in communication with the wirelesstransmitter to receive and process the data corresponding to a physicalattribute of the container, and a physical attribute analysis engine incommunication with the server to receive the data corresponding to aphysical attribute of the container and calculate a current value forthe physical attribute based upon the received data.

Further disclosed embodiments include a display engine module incommunication with the physical attribute analysis engine that receivesthe current value for the physical attribute and forwards the currentvalue to at least one predetermined web address.

In some embodiments, the at least one data collector is a camera. Instill further embodiments, the camera further includes an opticaldistance measurement sensor configured to measure a linear distance toan object in a field of view of the camera, and the data correspondingto a physical attribute of the container includes at least onemeasurement of the linear distance. In still further embodiments, thephysical attribute analysis engine has an object identifier module thatcompares the at least one measurement of the linear distance to a storedvalue corresponding to an empty container distance, and a capacitycalculator that computes the occupied volume of the container based atleast in part on the comparison result of the object identifier.

In further disclosed embodiments, the system includes a second cameracomprising an optical distance measurement sensor configured to measurea linear distance to a second object in a field of view of the secondcamera, and the data corresponding to a physical attribute of thecontainer further comprises the measurement of the linear distance tothe second object.

In further disclosed embodiments, the physical attribute analysis engineincludes an object identifier module that compares the at least onemeasurement of the linear distance, and the measurement of the lineardistance to the second object, to a stored value corresponding to anempty container distance, a triangulation module that determines thelocation of the object by combining at least one measurement of thelinear distance and the measurement of the linear distance to the secondobject, and a capacity calculator that computes the occupied volume ofthe container based at least in part on the comparison result of theobject identifier and the determined result of the triangulation module.

In some embodiments, the at least one data collector is a scale. Infurther disclosed embodiments, the scale measures a weight of thecontainer and the data corresponding to a physical attribute of thecontainer is at least one measurement of the container weight. In stillfurther disclosed embodiments, the physical attribute analysis enginefurther includes a weight calculator that calculates of the combinedweight of the container and contents by lookup of the weight limits forthe specified space, and an alarm module that signals an alarm if theweight of the contents exceeds a threshold value.

In further disclosed embodiments, the at least one data collector is abiometric sensor. In still further embodiments, the biometric sensorcaptures images associated with biological traits, and the datacorresponding to a physical attribute of the container further comprisesat least one measurement of the biological trait. In some embodiments,the biological traits include: light, temperature, velocity, electricalcapacity, and sound. In some embodiments, the biometric sensor capturesenergies that are associated with biological traits, and the datacorresponding to a physical attribute of the container further comprisesat least one measurement of the biological trait. In still furtherembodiments, the physical attribute analysis engine includes a biometricanalysis engine that identifies the biological traits based on thecaptured images by lookup of images and comparison with existing traitsin a database, and an alarm module that triggers an alarm if theidentified biological traits meet a threshold. In still furtherembodiments, the system includes a verification engine that verifies aliving system based on the biological traits.

In further disclosed embodiments, the at least one data collectorfurther comprises a global positioning system (GPS). In still furtherdisclosed embodiments, the physical attribute analysis engine includes areal-time position location module in communication with the GPS forlocating the geographical position of the container. In still furtherembodiments, the physical attribute analysis engine includes a timingmodule for timing of events inside the container and providing atime-stamp.

In further disclosed embodiments, the at least one data collector is adiagnostic device. In still further disclosed embodiments, the physicalattribute analysis engine includes a diagnostic analysis engine thatreceives data from the diagnostic device and processes the data todeliver a result related to conditions within the container. In stillfurther disclosed embodiments, the diagnostic device is a thermometerand the data from the diagnostic device represents a temperature, andthe result related to conditions within the container further comprisesan assessment of potentially hazardous temperature conditions within thecontainer. In still further disclosed embodiments, the diagnostic devicefurther comprises an oxygen sensor and the data from the diagnosticdevice represents an oxygen level, and the result related to conditionswithin the container further comprises an assessment of potentiallyhazardous oxygen levels within the container. In still further disclosedembodiments, the diagnostic device further comprises a carbon monoxidesensor and the data from the diagnostic device represents a carbonmonoxide level, and the result related to conditions within thecontainer further comprises an assessment of potentially hazardouscarbon monoxide levels within the container.

In further disclosed embodiments, the physical attribute analysis engineincludes an image recognition module for identifying objects inside thecontainer based on images collected by the camera.

Further disclosed embodiments include a portable collector device fordetermining the volume capacity of a container. The portable deviceincludes a camera configured to collect images related to the container,a GPS to collect information related to the position of the portabledevice on Earth, a processor containing a physical attribute analysisengine that receives information related to the collected images andposition of the portable device, and an input/output interface.

Further disclosed embodiments include a memory for storing the collectedimages and the information related to the position of the portabledevice. In still further disclosed embodiments, the portable collectordevice includes a transceiver for transmitting and receivinginformation.

Also disclosed is a method for determining the volume capacity of acontainer, the method including receiving data corresponding to aphysical attribute of the container, calculating a current value for thephysical attribute based upon the received data, and displaying thecurrent value for the physical attribute.

In further disclosed embodiments, the received data is images from acamera. In still further disclosed embodiments, the method includesoptically measuring a linear distance to an object in a field of view ofthe camera, and the data corresponding to a physical attribute of thecontainer further comprises at least one measurement of the lineardistance. In still further disclosed embodiments, the method includescomparing the at least one measurement of the linear distance to astored value corresponding to an empty container distance, andcalculating the occupied volume of the container based at least in parton the comparison result.

In still further disclosed embodiments, the method includes opticallymeasuring a linear distance to a second object in a field of view of asecond camera, and the data corresponding to a physical attribute of thecontainer further comprises the measurement of the linear distance tothe second object. In still further disclosed embodiments, the methodincludes comparing the at least one measurement of the linear distance,and the measurement of the linear distance to the second object, to astored value corresponding to an empty container distance, determiningthe location of the object by combining at least one measurement of thelinear distance and the measurement of the linear distance to the secondobject, and computing the occupied volume of the container based atleast in part on the comparison result and the determined location.

In further disclosed embodiments, the received data is a weightmeasurement from a scale and the method includes calculating thecombined weight of the container and contents by lookup of the weightlimits for the specified space, and triggering an alarm if the weight ofthe contents exceeds a threshold value.

In further disclosed embodiments, the method includes capturing dataassociated with biological traits within the container, and the datacorresponding to a physical attribute of the container further comprisesat least one measurement of the biological trait. In still furtherdisclosed embodiments, the biological traits include: light,temperature, velocity, electrical capacity, and sound.

In further disclosed embodiments, the method includes identifying thebiological traits based on the captured data by lookup of images andcomparison with existing traits in a database, and triggering an alarmif the identified biological traits meet a threshold. In still furtherembodiments, the method includes verifying a living system based on thebiological traits.

In further disclosed embodiments, the method includes communicating witha GPS to locate the geographical position of the container. In stillfurther embodiments, the method includes timing events inside thecontainer and providing a time-stamp.

In further disclosed embodiments, the method includes receiving datafrom a diagnostic device and processing the data to deliver a resultrelated to conditions within the container. In still furtherembodiments, the diagnostic device is a thermometer and the data fromthe diagnostic device represents a temperature, and the result relatedto conditions within the container further comprises an assessment ofpotentially hazardous temperature conditions within the container. Instill further embodiments, the diagnostic device is an oxygen sensor andthe data from the diagnostic device represents an oxygen level, and theresult related to conditions within the container further comprises anassessment of potentially hazardous oxygen levels within the container.In still further embodiments, the diagnostic device is a carbon monoxidesensor and the data from the diagnostic device represents a carbonmonoxide level, and the result related to conditions within thecontainer further comprises an assessment of potentially hazardouscarbon monoxide levels within the container. In still furtherembodiments, the method includes identifying objects inside thecontainer based on images collected by the camera.

Other advantages, efficiencies, and benefits of disclosed systems andmethods also exist.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically illustrates a container space mapping system inaccordance with disclosed embodiments.

FIG. 2 schematically a representative container and data collectioncapabilities in accordance with disclosed embodiments.

FIG. 3 schematically illustrates a representative of the data flows fromdata collectors to the cloud storage and a server in accordance withdisclosed embodiments.

FIG. 4a is an exemplary flowchart showing an embodiment of the systemsetup in accordance with disclosed embodiments.

FIG. 4b schematically illustrates some configuration parameters relatedto the flowchart shown in FIG. 4a in accordance with disclosedembodiments.

FIG. 5a schematically illustrates a representative of graphicalpresentation of analyzed data in accordance with disclosed embodiments.

FIG. 5b schematically illustrates some data analysis capabilities inaccordance with disclosed embodiments.

FIG. 6 schematically illustrates an embodiment of a camera in FIG. 2with capability of collecting a wide range of video and picture as wellas measuring distance in accordance with disclosed embodiments.

FIG. 7 schematically illustrates an embodiment whereby multiple camerasare placed inside a container.

FIG. 8 is an exemplary flowchart showing a space analysis method usingmultiple data collectors, such as those in FIG. 7, in accordance withdisclosed embodiments.

FIG. 9 schematically illustrates a portable space mapping deviceassociated with collection of data and transmission of data inaccordance with disclosed embodiments.

FIG. 10 schematically illustrates an embodiment of an integrated spacemapping system with multiple sources of data and different types ofcontainers in accordance with disclosed embodiments.

FIG. 11 is a schematic illustration of a physical attribute analysisengine 306 in accordance with disclosed embodiments.

While the disclosure is susceptible to various modifications andalternative forms, specific embodiments have been shown by way ofexample in the drawings and will be described in detail herein. However,it should be understood that the disclosure is not intended to belimited to the particular forms disclosed. Rather, the intention is tocover all modifications, equivalents and alternatives falling within thespirit and scope of the invention as defined by the appended claims.

DETAILED DESCRIPTION

FIG. 1 schematically illustrates a container space mapping system 10 inaccordance with disclosed embodiments. As shown, system 10 may include acontainer 100, a transmitter 200, a server 300 in communication with oneor more computing devices such as terminal 400, tablet 500, or mobiledevice 600 that may be used by a user 700.

As shown in FIG. 2, the container 100 is equipped with some combinationof cameras 101, biometric readers 102, diagnostic devices 103, scale104, GPS 105, and/or other sensors (as used herein, collectively andindividually, “data collector(s)”) which are placed in different partsof the container 100. The biometric readers 102 have sensors such ashigh definition cameras, infrared cameras, ultrasound devices,sub-dermal imaging devices, and other detectors. Diagnostics devices 103may include magnetic resonance imaging apparatuses, temperature sensors,or the like.

The data collectors are able to recognize objects shapes, weigh objects,capture odors, measure temperatures, as well as capture color of theobjects which is then transmitted for analysis (output of datacollectors). Additionally, the data collectors can be used to provideenvironmental parameters such as the captured temperatures, sound,weights, etc. They provide feedback back to the container 100 user 700such as in the case of overweight or wrong objects into the containeramong other functionalities (data collectors as regulators). All theactivities inside the container 100 is captured and recorded in form ofpictures or video. The cameras 101 or other data collectors can be usedto collect sound-related data as well, such as recording andtransmitting any audible noises from within container 100.

In one application, camera 101 is a Logitech web-cam C920 which is hasthe ability to capture a clear picture. Then, based on set configurationof specific intervals or via real-time the data is transmitted to theserver 300 through the transmitter 200 for storage and analysis.

In another application, the camera 101, GPS 105, and transmitter 200,may be combined in single device such as a mobile phone. One example isthe use of Samsung Galaxy J1 or Blue advance 4.0 to both function as adata collector to collect the data and transmitter 200 to transmit thedata to the server 300.

Embodiments of transmitter 200, which can be placed inside or outsidethe container 100, are used to communicate the data collected and storedin each of the data collectors to a server 300 through a network 201.Network 201 may be wireless (e.g., cellular, Wi-Fi, etc.), wired, or acombination. The transmitter 200 may be powered by connecting to powerin the existing grid, or via other sources of power such as batteries,solar, wind, bio-gas, among others. Embodiments of transmitter 200 mayhave dual functionality; sending the data to the server 300 andprocessing data and commands that can be forwarded back to the datacollectors for regulation or maintenance reasons. The data may beencrypted during the transmission process and in storage 301.

Embodiments of server 300 are composed of computing devices, databases,associated software and firmware, and appropriate network communicationdevices. Server 300 may comprise a stand-alone or distributed system.The server 300 is also equipped with the herein disclosed proprietaryspace management analysis engine 306 which has a calculator andalgorithms to organize, analyze, and actualize the data received fromthe container 100. The analysis engine 306 enables all the decisionsmaking parameters which are used to make the sense of the data after thecalculations and analysis. The analysis engine 306 output can bedisplayed graphically on the terminal 400, on mobile devices 600, orother devices (e.g., tablet 500) that are compatible with such output.

FIG. 4a is an exemplary flowchart showing an embodiment of the system 10setup in accordance with disclosed embodiments. The user 700 startsprocess 305 as indicated at 310 by authentication to into the backend(e.g., server 300) via any of the output devices, such as terminal 400,tablet 500, or mobile device 600, and starts by setting some initialconfigurations 311.

Examples of the configurations 311 to be set are schematicallyillustrated on FIG. 4b and may include container 100 details such ascontainer size 410, container serial number 412, transmitter serialnumber 414, location name 416, type of data collector device, type ofthe collector device 418 and serial numbers 420 for the same, datareporting intervals 422, settings for container 100 space fill levelalarms 424, other notification parameters or alarms 426 (such as notifywhen a certain space is occupied or if the door stays unlocked forcertain amount of time), project owner or point of contact 428, projectowner's contact information 430, types of objects 432 expected in thecontainer 100, and commission date 434, as diagrammatically illustratedin FIG. 4a . The foregoing listing of settings and parameters (as shownin FIG. 4b ) is merely exemplary, and other settings or parameters, suchas data collection intervals, data transfer intervals, and otherparameters may also be used.

Returning to process 305, upon configuration 311, data collection maybegin as indicated at 312. Part of data collection 312 may include aconnectivity test to ensure that the transmitter 200 is working, thedata collectors (e.g., 101-105) are turned on, and that there is dataflow from the data collectors (e.g., 101-105) to the storage 301.Embodiments of storage 310 may be distributed storage (e.g.,cloud-based), stand-alone storage, or a combination of storage types. Asthe data is being collected from the container 100, analysis engine 306performs analysis as indicated at 313. Analysis 313 of the data may becarried out continuously, at predetermined intervals, or as otherwisedesired, and insights from the data may be graphically displayed on theuser's 700 computer terminal 400, a tablet device 500 or the mobilephone 600 which has the software installed, an exemplary user interface118 of which is as illustrated in FIG. 5 a.

With reference to FIG. 5a , there are three containers 120, 121, 122being tracked in this example, each in in different locations (e.g.,locations A, B, and C). As discussed above, settings for someconfigurations 311 have been configured to indicate when any of thecontainers (120, 121, 122) reach 60% full as indicated by line 151, 85%full as indicated by line 152, and 95% full as indicated by line 153. Ofcourse, other percentage full levels may also be set, as well as other“alarm” conditions as disclosed herein. When a container's capacity isbelow 60%, there is a graphic indicator (e.g., a green light) as shownat 143. When a container is 60%-85% full, another graphic indicator(e.g., a yellow light) is displayed as shown at 142, and if a containeris over 85% full, a third graphic (e.g., a red light) may be displayedas shown at 141.

In this manner, the interface 118 is very easy to use and it helps theusers 700 easily understand what is happening with each container 100.This interface 118 is complementary to the messages that also may besent to users 700 when space limits are met, or alarms are triggered.Using a real-time data feed, the user 700 is able to see how much spaceis left in the container 100 from a graphical interface 118 whichenables them to make the appropriate decisions such as pickup, exchange,etc.

Embodiments of system 10 are capable of processing a large volume ofdata, and performing advanced analysis to create the most contextual andon-time decisions. For example, based on current data and historic data,there are opportunities to improve efficiencies and help anticipatealarm situations. This is achieved, for example, as shown in FIG. 5b ,with an embodiment of analysis engine 306 having modules for advancedstatistical analysis 316, statistical modeling 317, algorithms 318,artificial intelligence 319, and machine learning 320. For example, byanalyzing the number of alarms, the system 10 can identify the fill rateof the container 100 in a specific location, or based on specific typeof materials. Then, decisions can be anticipated when to schedule apickup and a change of containers. In fact, such proactive decisions donot require intervention by a person, the system 10 makes calculationsand schedules the desired actions 314 (e.g., pickup, exchange, empty,lock, etc.).

FIG. 6 schematically illustrates an embodiment of a camera 101 datacollector with capability of collecting a wide range of video andpictures, as well as measuring distance in accordance with disclosedembodiments. For embodiments where the container 100 contains cameras101 placed in different areas of the container 100, the spacecalculations can be calculated based on different angles of the object,image, and size relative to each camera's focal length, leading to anaccurate estimation of space occupied and space left to be filled.Embodiments of camera 101 may capture visible light pictures (i.e.,human viewable), or thermal images (i.e., infrared), or operate in othersuitable spectra. As shown, each camera 101 has 180-deg picture capturecapacity. It is also equipped with an appropriate measurement sensor(e.g., a laser rangefinder, or the like) to measure the distanceanywhere within the camera's 101 field of view. The camera 101 canaccurately measure multiple different distances as shown and described.

Upon setup within the container 100, the camera 101 measures one or moredistances (D1-D9) and is calibrated either to certain known areas of thewall 601 of the container 100, or to targets or markers 110 placed atknown distances, or to additional cameras 101. When the system 10detects something blocking or interrupting a calibrated distance(D1-D9), (e.g., through image recognition modules 1120, interruption ofa rangefinder, or the like) that is an indication that an object 108 ispresent (shown in FIG. 7).

FIG. 8 is an exemplary flowchart showing a space analysis method 800using multiple data collectors, such as the multiple cameras 101 shownin FIG. 7, in accordance with disclosed embodiments. As disclosed above,calibration of the cameras 101 occurs at 810 and may include attachingmarkers 110 to container 100 walls, or the like. At 811 measurements(e.g., D1-D9) from one camera 101, or from additional cameras 101 (e.g.,Cam2-Cam4) may be used at 812 by analysis engine 306 to triangulate andfind out at 813 the positional information of the object 108. From thepositional information, a space dimension may be determined at 814 andan amount of space 109 occupied in the container may be determined at815. Of course, one of ordinary skill in the art having the benefit ofthis disclosure will appreciate that the steps of method 800 may beperformed in different orders, at different times, or the like.

In addition to the ability to map space 109 based on distance, thecameras 101, biometric readers 102, and diagnostic devices 103, alsoprovide other images and data from inside container 100. Those imagesand data may be used (e.g., by image recognition module 1120) torecognize the image, and use that information as an alternative way ofcalculating the space inside the container, or take another action 314(e.g., lock the container 100, etc.). Table 1 below shows sample code in[language?] with an image recognition routine and a calculation of theamount of space 109 taken by the object 108.

TABLE 1 public class Proc { private static int picture_count = 0; publicstatic double findMarkerWidth(String imgPath){ Mat frame =Highgui.imread(imgPath); Mat gscale = new Mat( ); Mat blur = new Mat( );Mat edged = new Mat( ); // convert the image to grayscale, blur it,detect edges if(frame.channels( )>1) Imgproc.cvtColor(frame, gscale,Imgproc. COLOR_BGR2GRAY); else gscale = frame;Imgproc.GaussianBlur(gscale, blur, new Size(5, 5), 0);Imgproc.Canny(blur, edged, 35, 125); // find the contours in the edgedimage and keep the largest one; List<MatOfPoint> contours = newArrayList<>( ); Mat hierarchy = new Mat(edged.width( ), edged.height( ),CvType.CV_8UC1); Imgproc.findContours(edged.clone( ), contours,hierarchy, Imgproc.RETR_LIST, Imgproc.CHAIN_APPROX_SIMPLE); int max_idx= 0; // if any contours exist if (hierarchy.size( ).height > 0 &&hierarchy.size( ).width > 0) { double max_area = 0; double area; // findthe contour with largest area for (int idx = 0; idx >= 0; idx = (int)hierarchy.get(0, idx)[0]) { area =Imgproc.contourArea(contours.get(idx)); if(area > max_area){ max_area =area; max_idx = idx; } Imgproc.drawContours(frame, contours, idx, newScalar(0, 0, 255)); } byte[ ] bytes = new byte[ frame.rows( ) *frame.cols( ) * frame.channels( ) ]; File file = newFile(CameraActivity.activity.getExternalFilesDir(null), ″pic_contour″+Integer.toString(pic_count) + ″.jpg″); pic_count++; Boolean bool = null;String filename = file.toString( ); bool = Highgui.imwrite(filename,frame); if (bool == true) Log.d(LOG_TAG, ″SUCCESS writing image toexternal storage″); else Log.d(LOG_TAG, ″Fail writing image to externalstorage″); Log.i(LOG_TAG, ″Max Area: ″ + Double.toString(max_area)); }else{ Log.e(LOG_TAG, ″No Contour Found!″); } MatOfPoint2f newPoint = newMatOfPoint2f(contours.get(max_idx).toArray( )); returnImgproc.arcLength(newPoint, true); } public static doubledistanceToImage(double focalLength, double knownWidth, doublepixelsPerWidth){ return (knownWidth * focalLength) / pixelsPerWidth; } }

As disclosed herein, and shown in FIG. 1, a number of input/outputdevices (e.g., 400, 500, 600) may be used with system 10. These are thedevices where the collected and analyzed data can be accessed by a user700. These output devices include a computer 400, hand-held devices 500,mobile phones 600, and other devices, and in some embodiments mayinclude data collectors (e.g., a camera 101, or the like).

Embodiments of system 10 may require a user 700 to log-in withmulti-factor authentication to the software application through any ofthe output devices (400, 500, 600) to see the raw data, or post analysisdata. Such data includes watching raw camera 101 video, or pictures foreach of the containers 100, biometric readings, temperature readings, orweight readings. Post analysis data may be shown in form of tables, orgraphically (e.g., as in FIG. 5a ) depending on user's 700 preference.Also, user 700 can make additional changes to the existing container 100configurations 311.

As disclosed herein, data collectors (e.g., 101, 102, etc.) may bemounted on the container 100, but additional embodiments allow the samemeasurements to be achieved using a portable device 900 which iscomposed of camera 101, GPS 105, transmitter 201, memory 801,processor(s) 802, input/output interfaces 803, and one or morecommunication busses 804 (e.g., a USB port, or the like) in a unitaryform factor device 900. The portable device 900 may be used when theuser 700 wants to get accurate information about any 3-dimension spacesuch as space volume, load sizing, and other physical properties but thecontainer 100 is not equipped with any of the data collectors, ortransmitter 200.

In accordance with the portable device 900 embodiments, the user 700places the portable device 900 inside the container 100 and they areable to collect, store, analyze the data in real-time. The data is alsopushed to the server 300 via transmitter 200 to network 201 (e.g., theinternet) and storage 301 for future reference or other applications.The user 700 then is able to make on-time decision based on thecalculations and analysis.

For example, a user 700 may have some space 109 left in a shippingcontainer 100. The user 700 can use the portable device 900 toaccurately determine what load can fit in the remain space 109 based ondimensions, weight, etc., as guided by the input parameters and outputanalysis. Likewise, the user 700 can use portable device 900 toestablish if a load outside the container 100 will in fact fit in theremaining space 109. Therefore, there is no longer trial and error, ortime and energy wasted, associated with lack of accurate sizinginformation.

The system 10 can also be expanded to different types of containers 100and can capture, organize, and help in decision making of multiplesources of data. As shown in FIG. 10, different data sources caninclude: container A 120, container B 121, container C 122, each locatedin different places, portable device 900, the data coming from space 109inside a building 130, and other sources. For illustrative purposes, thesystem 10 may also have remote data storage 301 for backup.

FIG. 11 is a schematic illustration of a physical attribute analysisengine 306 in accordance with disclosed embodiments. As shown, anddisclosed herein, analysis engine 306 may include one or more modules tocause a processor(s) to perform the herein described functions. As alsodisclosed herein, analysis engine 306 may be in communication with othersystem 10 modules, such as display engine module 308. As shown, analysisengine 306 may include an object identifier module 1102 for comparinglinear distance measurements (e.g., D1-D9). Also included may be acapacity calculator 1104 for computing the occupied volume of thecontainer 100. Also included may be a triangulation module 1106 fordetermining the location of objects 108 in the container 100. Alsoincluded may be a weight calculator 1108 that calculates of thecontainer 100 and contents. Also included may be an alarm module 1110for triggering various system 10 alarms. Also included may be abiometric analysis engine 1112 that identifies biological traits. Alsoincluded may be a real-time position location module 1114 thatcommunicates with GPS 105 to locate the container 100. Also included maybe a timing module 1116 for timing events within container 100 andproviding a time stamp. Also included may be a diagnostic analysisengine 1118 that receives diagnostic data and processes the same. Alsoincluded may be a image recognition module 1120 that identifies objects108 within container 100 based, at least in part, on images collected bythe camera 101. Other modules 1122 may also be included.

Although various embodiments have been shown and described, the presentdisclosure is not so limited and will be understood to include all suchmodifications and variations are would be apparent to one skilled in theart.

What is claimed is:
 1. A system for remote monitoring of a container,the system comprising: a first camera comprising an optical distancemeasurement sensor configured to measure a first distance to a firstmarker in a field of view of the first camera; a second cameracomprising an optical distance measurement sensor configured to measurea second distance to a second marker in a field of view of the secondcamera; at least one data collector configured to collect datacorresponding to a physical attribute of the container; a wirelesstransmitter in communication with the at least one data collector andconfigured to transmit the data corresponding to a physical attribute ofthe container to a location remote from the location of the container; aserver in communication with the wireless transmitter to receive andprocess the data corresponding to a physical attribute of the container;a physical attribute analysis engine in communication with the server toreceive the data corresponding to a physical attribute of the containerand calculate a current value for the physical attribute based upon thereceived data the physical attribute analysis engine further comprising:an object identifier module that compares the first distance to thefirst marker and the second distance to the second marker to a storedvalue corresponding to an empty container distance; a triangulationmodule that determines the location of an object by combining the firstdistance to the first marker and the second distance to the secondmarker; and a capacity calculator that computes the occupied volume ofthe container based at least in part on the comparison result of thefirst distance, the second distance, and the stored value by the objectidentifier and the determined location result of the object by thetriangulation module.
 2. The system of claim 1 wherein there is at leastone data collector that is a diagnostic device.
 3. The system of claim 2wherein the physical attribute analysis engine further comprises: adiagnostic analysis engine that receives data from the diagnostic deviceand processes the data to deliver a result related to conditions withinthe container.
 4. The system of claim 3 wherein the diagnostic devicefurther comprises a thermometer and the data from the diagnostic devicerepresents a temperature, and the result related to conditions withinthe container further comprises an assessment of potentially hazardoustemperature conditions within the container.
 5. The system of claim 3wherein the diagnostic device further comprises an oxygen sensor and thedata from the diagnostic device represents an oxygen level, and theresult related to conditions within the container further comprises anassessment of potentially hazardous oxygen levels within the container.6. The system of claim 3 wherein the diagnostic device further comprisesa carbon monoxide sensor and the data from the diagnostic devicerepresents a carbon monoxide level, and the result related to conditionswithin the container further comprises an assessment of potentiallyhazardous carbon monoxide levels within the container.
 7. A method fordetermining the volume capacity and a physical attribute of a container,the method comprising: optically measuring a first distance to a firstmarker in a field of view of a first camera; optically measuring asecond distance to a second marker in a field of view of a secondcamera; receiving data corresponding to a physical attribute of thecontainer; calculating a volume capacity of the container by: comparingthe first distance to the first marker and the second distance to thesecond marker to a stored value corresponding to an empty containerdistance; determining the location of an object by combining the firstdistance to the first marker and the second distance to the secondmarker; and calculating the occupied volume of the container based atleast in part on the comparison result of the first distance, the seconddistance, and the stored value by the object identifier and thedetermined location result of the object by the triangulation module;calculating a current value for the physical attribute based upon thereceived data; and displaying the current value for the physicalattribute.
 8. The method of claim 7 further comprising: receiving datafrom a diagnostic device and processing the data to deliver a resultrelated to conditions within the container.
 9. The method of claim 8wherein the diagnostic device further comprises a thermometer and thedata from the diagnostic device represents a temperature, and the resultrelated to conditions within the container further comprises anassessment of potentially hazardous temperature conditions within thecontainer.
 10. The method of claim 8 wherein the diagnostic devicefurther comprises an oxygen sensor and the data from the diagnosticdevice represents an oxygen level, and the result related to conditionswithin the container further comprises an assessment of potentiallyhazardous oxygen levels within the container.
 11. The method of claim 8wherein the diagnostic device further comprises a carbon monoxide sensorand the data from the diagnostic device represents a carbon monoxidelevel, and the result related to conditions within the container furthercomprises an assessment of potentially hazardous carbon monoxide levelswithin the container.
 12. The method of claim 7 wherein the physicalattribute of the container comprises a temperature within the containerand the method further comprises displaying the current value for thetemperature within the container.
 13. The method of claim 7 wherein thephysical attribute of the container comprises an oxygen level within thecontainer and the method further comprises displaying the current valuefor the oxygen level within the container.